package com.fatgirl.time
{
	/**
	 * 定时器的访问者
	 * 此访问者控制定时器对象的定时执行过程
	 * @author iceman
	 * 
	 */
	public interface ITimerVisitor
	{
		/**
		 *  添加定时器 
		 * @param _delay  时间间隔
		 * @param _timeElement 定时器对象
		 * @param _repeatCount 循环次数 0为无限循环（默认为0）
		 * 
		 */
		function addTimer(_delay:int,_timeElement:ITimerElement,_repeatCount:int = 0):void;
		/**
		 * 移除定时器 
		 * @param _timeElement
		 * 
		 */
		function removeTimer(_timeElement:ITimerElement):void;
		/**
		 * 开始定时器 
		 * @param _timeElement
		 * 
		 */
		function startTimer(_timeElement:ITimerElement):void;
		/**
		 * 停止定时器 
		 * @param _timeElement
		 * 
		 */
		function stopTimer(_timeElement:ITimerElement):void;
		/**
		 * 重置定时器 
		 * @param _timeElement
		 * 
		 */
		function resetTimer(_timeElement:ITimerElement):void;
		
		/**
		 * 查看是否运行状态 
		 * @return 
		 * 
		 */
		function running(_timeElement:ITimerElement):Boolean;
	}
}